The present application is related to U.S. patent applications respectively entitled: xe2x80x9cMethods And Apparatus For Motion Estimation Using Causal Templates,xe2x80x9d and xe2x80x9cMethods And Apparatus For Context-based Perceptual Quantization,xe2x80x9d both filed concurrently herewith.
The invention relates to video compression and, more particularly, to context-based coding mode selection methods and apparatus in a video compression system.
Hybrid coding methods are widely used to efficiently represent video sequences, where temporal prediction is first performed to reduce the temporal redundancy in a video sequence and the resultant prediction errors are then encoded, e.g., see: Draft of MPEG-2: Test Model 5, ISO/IEC JTC1/SC29/WG11, April 1993; Draft of ITU-T Recommendation H.263, ITU-T SG XV, Dec. 1995; A. N. Netravali and B. G. Haskell, Digital Pictures: Representation, Compression, and Standards, 2nd Ed., Plenum Press, 1995; and B. Haskell, A. Puri, and A. N. Netravali, xe2x80x9cDigital Video: An Introduction to MPEG-2,xe2x80x9d Chapman and Hall, 1997, the disclosures of which are incorporated herein by reference. The temporal prediction is usually very helpful in the compression of video signals. However, it is also possible for the temporal prediction error to be more difficult to encode than the original signal, especially in regions of the frame where temporal prediction does not perform very well. For example, an encoder could fail to find a good temporal prediction block when the real motion is out of the search range. Therefore, many video coders adopt an inter/intra adaptive coding approach, where inter-frame coding is applied to the areas (blocks or pixels) where the temporal prediction is likely to provide a better compression and, otherwise, intra-frame coding is applied. Hence, there are two operational modes, inter-frame coding mode and intra-frame coding mode. The process of deciding which coding mode will be used to encode each block (or pixel) is referred to as coding mode selection.
However, it is known that the conventional coding mode selection approach requires overhead bits representing coding mode information to be sent to the decoder since the samples in the current frame used for coding mode selection are not available at the decoder, most notably as will be explained, the current block or sample. This overhead burden can be extremely heavy when mode selection is performed on a small block or on a pixel basis. Thus, it would be highly advantageous to have a coding mode selection method which does not require coding mode information to be transmitted to a decoder.
The present invention provides for coding mode selection for a video sequence wherein the decision to perform inter-frame coding or intra-frame coding on a current portion of the video sequence is based only on previously reconstructed samples associated with the video sequence. Advantageously, an encoder employing the methodologies of the invention is not required to transmit coding mode overhead information to a corresponding decoder.
In one aspect of the invention, a method of selecting a coding mode in a video processing system for processing a current portion of a video sequence includes identifying previously reconstructed samples associated with the current portion from a current frame and a reference frame of the video sequence. Then, a selection is made between inter-frame coding and intra-frame coding for processing the current portion based on comparisons associated with the previously reconstructed samples. The comparisons are dependent on the particular application employing the methodology of the invention. By way of example, the invention may be implemented in a pixel-based predictive coding system or a block transform-based coding system. In the former embodiment, the current portion is a pixel and intensity values associated with previously reconstructed samples are used in the comparison. In the latter embodiment, the current portion is a block and dc and ac coefficients associated with previously reconstructed blocks are used in the comparison. Further, the previously reconstructed samples are preferably in sets of samples referred to as templates. A template having only previously reconstructed samples is called a causal template.
Since coding mode selection at an encoder is accomplished according to the invention using sets or templates comprising only previously reconstructed samples, it is to be appreciated that such sets or templates are also available at the decoder. As a result, an encoder of the invention does not need to provide coding mode information to the corresponding decoder since the decoder can independently perform the same decision process using the same causal sets or templates used at the encoder. Advantageously, transmission bandwidth and/or storage capacity is saved.